*This is the .do file for replication ("Selective Control: The Political Economy of Censorship")using GEDMC.dta*

*the replication fle uses two datasets: the individual censorship event dataset (GEDMC.dta) and the time series panel dataset (TSGEDMC.dta) that collapses events and their characteristics by country and year. Further explanations below* 

use "GEDMC.dta"

**********************************************************
************Replication for in-text results***************
**********************************************************


*Table 1 - Heckman Selection Model in-text (full range of the Media reach variable 1 to 8; full range for Severity of censorship variable (1-13))*

*Full sample*

heckoprobit  rec_severitynumeric1 gs diasp ownexp ca recreverse , select(ce= economicfreedom legalfreedom demoindicator lnpercapita lnpop loil i.countrycodecow i.yearmerger)

outreg2 using table1R.doc, keep(gs diasp ownexp ca recreverse economicfreedom legalfreedom demoindicator lnpercapita lnpop loil) replace  ctitle (Model1A) 

*Robustness check - clustered standard errors*

heckoprobit  rec_severitynumeric1 gs diasp ownexp ca recreverse , select(ce= economicfreedom legalfreedom demoindicator lnpercapita lnpop loil i.countrycodecow i.yearmerger) cluster(countrycodecow) robust

 *Democracies subsample*
 
heckoprobit  rec_severitynumeric1 gs diasp ownexp ca recreverse  if demoindicator>7.5  , select(ce= i.countrycodecow i.yearmerger economicfreedom legalfreedom  demoindicator lnpercapita lnpop loil)

outreg2 using table1R.doc,keep (gs diasp ownexp ca recreverse economicfreedom legalfreedom demoindicator lnpercapita lnpop loil) append ctitle(Model 2A) label 
 
 *Autocracies subsample*
 
heckoprobit  rec_severitynumeric1 gs diasp ownexp ca recreverse  if demoindicator<=7.5  , select(ce= i.countrycodecow i.yearmerger economicfreedom legalfreedom  demoindicator lnpercapita lnpop loil)

outreg2 using table1R.doc, keep (gs diasp ownexp ca recreverse economicfreedom legalfreedom demoindicator lnpercapita lnpop loil) append ctitle(Model 3A) label 


*Bar graph of the dependent variable (Severity of censorship)*

label define rec_severitynumeric1 1 "lawsuits" 2 "fines" 3 "eviction" 4 "block" 5 "accreditation denial" 6 "license removal" 7 "ban" 8 "intimidation" 9 "threats of physical violence" 10 "assault" 11 "incarceration" 12 "death" 13 "other"

label list rec_severitynumeric1
label value rec_severitynumeric1 rec_severitynumeric1

graph bar (sum) ce, over(rec_severitynumeric1,  label(angle(45))) 


*Figure 1 coefficient plots (in-text) - Media reach of traditional media*

oprobit rec_severitynumeric1 recreverse ca  ownexp gs diasp economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec3<5, cluster(countrycodecow) robust

 coefplot, drop( _cons *.countrycodecow *.yearmerger) xline(0) order(recreverse ca ownexpand gs diaspora  economicfreedom legalfreedom demoindicator lnpercapita lnpop )


*Figure 2 (in-text) [sevalt3 is a dichotomous variable recoding and consolidating the Severity of censorship DV in two categories: punitive censorship (1-9) and severe censorship (10-12)]*

*Margins plot for Media reach and Collective action-Full sample*

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse  economicfreedom legalfreedom demoindicator lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5, cluster(countrycodecow) robust 

 margins ca 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Collective Action Reporting with 95% CIs") subtitle ("Full sample")


 margins recreverse 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40))  legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Media Reach with 95% CIs") subtitle ("Full sample")

*Robustness with variables in reduced form*
oprobit  sevalt3  eventtype4  economicfreedom legalfreedom demoindicator lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5, cluster(countrycodecow) robust 

oprobit  sevalt3  recreverse  economicfreedom legalfreedom demoindicator lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5, cluster(countrycodecow) robust 

*Margins plot for Media reach and Collective action- autocracies and democracies*

*Collective action - autocracies and democracies*

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5, cluster(countrycodecow) robust

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5

																								  
 margins ca 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Collective Action Reporting with 95% CIs") subtitle ("Non-democracies")
 
oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5, cluster(countrycodecow) robust 

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5

 
 margins ca 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Collective Action Reporting with 95% CIs") subtitle ("Democracies")

*Media reach (truncated at traditional media: online, print, radio, TV) - autocracies and democracies*

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5, cluster(countrycodecow) robust 

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5

																								  
 margins recreverse 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Media Reach with 95% CIs") subtitle ("Non-democracies")
 
oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5, cluster(countrycodecow) robust 

oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5, cluster(countrycodecow) robust 

 
 margins recreverse 
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Media Reach with 95% CIs") subtitle ("Democracies")								  

*Figure A8, Online Appendix- Foreign ownership - margins (autocracies and democracies)*


 oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5, cluster(countrycodecow) robust 
																								  
 margins ownexp
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Foreign Ownership with 95% CIs") subtitle ("Full sample")


 oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5, cluster(countrycodecow) robust 
																								  
 margins ownexp
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Collective Action Reporting with 95% CIs") subtitle ("Non-democracies")

 
 oprobit  sevalt3 gs diasp i.ownexp i.ca i.recreverse   economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5, cluster(countrycodecow) robust 
																								  
 margins ownexp
 marginsplot 
 marginsplot, recast(line) recastci(rarea) xlab(,valuelabel) legend(on order (1 "Punitive censorship" 2 "Severe censorship")) title("Predictive Margins of Foreign Ownership with 95% CIs") subtitle ("Democracies")



*Table 2 (2SLS) replication for in-text results*

**generating an IV instrument for the media reach variable



* The instrument IVfull has been computed based on country-year Gallup poll data on media platform audiences, as follows: gen IVfull=tvconsipol if  recoded_mediatypenumeric1==2; replace IVfull=radioconsipol if  recoded_mediatypenumeric1==1; replace IVfull=newspconsipol if  recoded_mediatypenumeric1==3; replace IVfull=intconsipol if  recoded_mediatypenumeric1==4| recoded_mediatypenumeric1==5. The original variables *consipol come from TSGEDM.dta*

  ivregress 2sls rec_severitynumeric1  lnpop  lnpercapita demoindicator (recreverse=IVfull ) i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5, cluster(countrycodecow) robust first 
  estat firststage

    est restore first
    outreg2 using myfile, cttop(first) keep(IVfull) replace
    est restore second
    estat firststage
    local fstat `r(mineig)'
   outreg2 using myfile.doc, cttop(second) keep (rec3  lnpop  lnpercapita demoindicator)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label
 



 ivregress 2sls rec_severitynumeric1 (mtype2 =IVfull )lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5,  cluster(countrycodecow) robust first 
	 
eststo first
outreg2 using myp3, cttop(first) keep(IVfull) replace
    est restore second
    estat firststage
    local fstat `r(mineig)'
   outreg2 using myp3.doc, cttop(second) keep (mtype2  lnpop  lnpercapita demoindicator)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label


		ivregress 2sls rec_severitynumeric1 (mtype1 =IVfull )lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5, cluster(countrycodecow) robust	first
		eststo first
outreg2 using myp8, cttop(first) keep(IVfull) replace
  estat firststage
    local fstat `r(mineig)'
   outreg2 using myp8.doc, cttop(first) keep (mtype1  lnpop  lnpercapita demoindicator)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label
	
		
		
			ivregress 2sls rec_severitynumeric1 (mtype3 =IVfull )lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5, cluster(countrycodecow) robust	first
	eststo first
   outreg2 using myp11.doc, cttop(first) keep (mtype3  lnpop  lnpercapita demoindicator)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label

		
			
			
			ivregress 2sls rec_severitynumeric1 (mtype4 =IVfull )lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5, cluster(countrycodecow) robust	first
			eststo first
   outreg2 using myp12.doc, cttop(first) keep (mtype4  lnpop  lnpercapita demoindicator)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label
	
			
*Figure 3 coefficient plot panel format in-text*

*TSGEDMC.dta is the panel dataset with a country-year unit of analysis (all censorship events and their characteristics have been collapsed by countrycodecow and yearmerger as follows:collapse (sum) ce own1 own2 mtype1 mtype2 mtype3 mtype4 mtype5 mtype6 mtype7 mtype8 distribution1 distribution2 distribution3 abroad capital provinces sex1 sex2 professional1 professional2 professional3 professional4 specialization1 specialization2 specialization3 specialization4 specialization5 specialization6 newstype1 newstype2 newstype3 newstype4 newstype5 newstype6 newstype7 newstype8 Corruptionhr1 Corruptionhr2 eventtype1 eventtype2 eventtype3 eventtype4 eventtype5 eventtype6 eventtype7 censoringagent1 censoringagent2 censoringagent3 censoringagent4 level1 level2 level3 bias1 bias2 bias3 (mean) rec_severitynumeric1 politicalfreedom economicfreedom legalfreedom lnpercapita lnpop dpi_gvs dpi_gf dpi_hlio vdem_pubcorr demoindicator al_ethnic ipu_l_sw ucdp_type2 ucdp_type3 vdem_libdem vdem_polyarchy imf_gdpgr ucdp_type1 ucdp_type4 wdi_expmilgdp une_pee bmr_dem chga_demo p_durable autreg1 autreg2 autreg3 autreg4 autreg5 autreg6 autreg7 autreg8 htreg1 htreg2 htreg3 htreg4 htreg5 htreg6 htreg7 rsf_pfi gd_ptsa voh_gti diat_ti print radio tv internetcensorship internetratenumeric, by(countrycodecow yearmerger))*

clear
use TSGEDMC.dta


xtnbreg mtype2 tvconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom i.yearmerger, fe 
eststo m1
	 
xtnbreg mtype1 radioconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom   i.yearmerger, fe 
eststo m2

xtnbreg mtype3 newspconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
eststo m3

*Variables lntv, lnradio and lnprint used below are logarithms of UNESCO country-year data on the number of TV, radio stations and newspapers with values interpolated by country for missing years*
	 
xtnbreg mtype2 lntv lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
eststo m4

xtnbreg mtype1 lnradio lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
eststo m5

xtnbreg mtype3 lnprint lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
eststo m6

coefplot m1 m2 m3 m4 m5 m6, keep(tvconsipolated radioconsipolated newspconsipolated lntv lnradio lnprint ) xline(0)

****************************************
****************************************
*Online Appendix findings - replication*
****************************************
****************************************

*Figure A3 - Online Appendix*

xtmixed sevalt ca recreverse gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop  if rec_severitynumeric1<13 & rec3<5 || countrycodecow: , covariance(independent) var || yearmerger: 
eststo hlm1

xtmixed sevalt1 ca recreverse gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop  if rec_severitynumeric1<13 & rec3<5 || countrycodecow: , covariance(independent) var || yearmerger: 
eststo hlm2

xtmixed sevalt2 ca recreverse gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop  if rec_severitynumeric1<13 & rec3<5 || countrycodecow: , covariance(independent) var || yearmerger: 
eststo hlm3

xtmixed sevalt3 ca recreverse gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop  if rec_severitynumeric1<13 & rec3<5 || countrycodecow: , covariance(independent) var || yearmerger: 
eststo hlm4

label var _est_hlm1 "Severity (alternative scale 1)"
label var _est_hlm2 "Severity (alternative scale 2)"
label var _est_hlm3 "Severity (alternative scale 3)"
label var _est_hlm4 "Severity (alternative scale 4)"

coefplot (hlm1), bylabel(Severity (alternative scale 1)) ||(hlm2), bylabel(Severity (alternative scale 2)) || (hlm3), bylabel(Severity (alternative scale 3))||(hlm4), bylabel(Severity (alternative scale 4))||, xline(0) drop(_cons) 

*Figure A4 - Online Appendix (for traditional media)*

oprob sevalt3 i.recreverse ca gs ownexpand diaspora lnpercapita lnpop  legalfreedom  economicfreedom  demoindicator i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & rec_severitynumeric1 <13,  cluster (countrycodecow) robust

quietly margins recreverse
 marginsplot, recast(line)  xlab(,valuelabel angle(40)) legend(on order (1 "Punitive censorship" 2 "Severe censorship"))  title("Predictive Margins of Media Reach with 95% CIs") subtitle ("Full sample")


*Figure A5 - Online Appendix*

oprobit rec_severitynumeric1 recreverse ca  ownexp gs diasp economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec3<6, cluster(countrycodecow) robust

 coefplot, drop( _cons *.countrycodecow *.yearmerger) xline(0) order(recreverse ca ownexpand gs diaspora economicfreedom legalfreedom demoindicator lnpercapita lnpop )
 
 *Table A2 - Online Appendix*
 
gen mediaradiofirst=9-recoded_mediatypenumeric1
 
oprobit rec_severitynumeric1  mediaradiofirst  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6, cluster(countrycodecow) robust

oprobit rec_severitynumeric1  mediaradiofirst lnpercapita lnpop i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6, cluster(countrycodecow) robust

oprobit rec_severitynumeric1  mediaradiofirst lnpercapita lnpop economicfreedom legalfreedom politicalfreedom demoindicator i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6, cluster(countrycodecow) robust

*Table A3 - Online Appendix*

*these models test the robustness of the media reach scale*
*Baseline model*
oprobit rec_severitynumeric1  recreverse lnpercapita lnpop economicfreedom legalfreedom politicalfreedom demoindicator i.countrycodecow i.yearmerger if rec3<6,  cluster (countrycodecow)

*Print and TV reversed coding*
recode recoded_mediatypenumeric1 1=1  2=3 3=2 4=4 5=5, gen(rec2)
gen mediaprinttvswitched=9-rec2
oprobit rec_severitynumeric1  mediaprinttvswitched lnpercapita lnpop economicfreedom legalfreedom politicalfreedom demoindicator i.countrycodecow i.yearmerger if rec2<6,  cluster (countrycodecow)

*Radio and TV combined coding*
recode recoded_mediatypenumeric1 1=1  2=1 3=2 4=3 5=4, gen(rec5)
gen mediaradiotvcombined=9-rec5
oprobit rec_severitynumeric1  mediaradiotvcombined lnpercapita lnpop economicfreedom legalfreedom politicalfreedom demoindicator i.countrycodecow i.yearmerger if rec5<6,  cluster (countrycodecow)

*Media reach - dichtotomous*
recode recoded_mediatypenumeric1 1=1  2=1 3=1 4=2 5=2, gen(rec6)
gen mediadichotomous=9-rec6
label define mediadichotomous 7 "Online media" 8 "Traditional media (TV, radio and print)"
oprobit rec_severitynumeric1 mediadichotomous lnpercapita lnpop demoindicator legalfreedom politicalfreedom economicfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6  , cluster (countrycodecow)

*Figure A6 - Online Appendix*

label var mediadichotomous "Media reach - dichotomous"
oprobit rec_severitynumeric1 mediadichotomous ca  ownexp gs diasp economicfreedom legalfreedom demoindicator lnpercapita lnpop  i.countrycodecow i.yearmerger if rec3<6, cluster(countrycodecow) robust

 coefplot, drop( _cons *.countrycodecow *.yearmerger) xline(0) order(mediadichotomous ca ownexpand gs diaspora  economicfreedom legalfreedom demoindicator lnpercapita lnpop )

*Table A4 - Online Appendix (2SLS with one and two instruments)*

tabulate countrycodecow, gen(cdummies)
tabulate yearmerger, gen(ym)

ivregress 2sls rec_severitynumeric1  lnpercapita lnpop  dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom politicalfreedom economicfreedom  cdummies2-cdummies204 ym2-ym14 (recreverse= IVfull) 
eststo sup1
outreg2 using sls3.doc, replace cttop(Severity of censorship - 2SLS, one instrument) keep (recreverse lnpercapita lnpop dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom economicfreedom politicalfreedom)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label

* The instrument IVsupply has been computed based on UNESCO country - year data on number of radio and TV stations, newspapers, as follows: gen IVsupply=lntv if  recoded_mediatypenumeric1==2; replace IVsupply=lnradio if  recoded_mediatypenumeric1==1; replace IVsupply=lnprint if  recoded_mediatypenumeric1==3; replace IVsupply=wdi_internetuse if  recoded_mediatypenumeric1==4| recoded_mediatypenumeric1==5. The original variables ln* come from TSGEDM.dta*

ivregress 2sls rec_severitynumeric1   lnpercapita lnpop dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom economicfreedom politicalfreedom cdummies2-cdummies204 ym2-ym14 (recreverse= IVfull IVsupply) 
eststo sup2
outreg2 using sls3.doc, append cttop(Severity of censorship - 2SLS, two instruments) keep (recreverse lnpercapita lnpop dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom economicfreedom politicalfreedom)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label

ivregress 2sls rec_severitynumeric1  lnpercapita lnpop  dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom politicalfreedom economicfreedom  cdummies2-cdummies204 ym2-ym14 (mediadichotomous= IVfull) if  recoded_mediatypenumeric1<5 
eststo sup3
outreg2 using sls3.doc, append cttop(Severity of censorship - 2SLS, dichotomous dependent variable) keep ( mediadichotomous lnpercapita lnpop dpi_gvs dpi_gf dpi_hlio vdem_pubcorr legalfreedom economicfreedom politicalfreedom)  addtext(Country FE, YES, Year FE, YES, Model, 2SLS, IV F-stat, `fstat') label


 
*Table A5 - Online Appendix*


 gen mediatypenumericreversed=9-recoded_mediatypenumeric1

oprobit rec_severitynumeric1 recreverse lnpercapita lnpop demoindicator legalfreedom politicalfreedom economicfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6  & demoindicator<7.5, cluster (countrycodecow)
eststo robustnondem


oprobit rec_severitynumeric1 recreverse lnpercapita lnpop demoindicator legalfreedom politicalfreedom economicfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6  & demoindicator>=7.5, cluster (countrycodecow)
eststo robustdem


oprobit rec_severitynumeric1 mediatypenumericreversed lnpercapita lnpop demoindicator legalfreedom politicalfreedom economicfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6  & demoindicator>=7.5, cluster (countrycodecow)
eststo robustnondem1

oprobit rec_severitynumeric1 mediatypenumericreversed lnpercapita lnpop demoindicator legalfreedom politicalfreedom economicfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<6  & demoindicator<7.5, cluster (countrycodecow)
eststo robustdem1
esttab robustnondem robustnondem1 robustdem robustdem1 using robdem.rtf, se  varlabels() varwidth(9) starlevels( ~ 0.10 * 0.05 ** 0.01 *** 0.001)   indicate("Country FEs = *countrycodecow" "Year FEs=*yearmerger" `r(indicate_fe)')





*Figure A7 - Online Appendix*

    *Coefficient plots for democracies and non-democracies*
    oprobit rec_severitynumeric1 ca diasp ownexp gs recreverse economicfreedom legalfreedom  lnpercapita lnpop  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & demoindicator>7.5, cluster(countrycodecow) robust

  estimates store A

    oprobit rec_severitynumeric1 ca diasp ownexp gs recreverse economicfreedom legalfreedom lnpercapita lnpop  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & demoindicator<=7.5, cluster(countrycodecow) robust

  estimates store B
coefplot A, bylabel(Democracies) || B, bylabel(Non-democracies) drop(_cons lnpercapita lnpop economicfreedom *.countrycodecow *.yearmerger  ) xline(0) byopts(compact cols(1)) subtitle(, size(vlarge) margin(medium) justification(left) color(white) bcolor(black) bmargin(top_bottom)) order(recreverse ca  ownexpand  diasp gs)
 

coefplot A, bylabel(Democracies) || B, bylabel(Non-democracies) drop(_cons  *.countrycodecow *.yearmerger  ) xline(0) byopts(compact cols(1)) subtitle(, size(vlarge) margin(medium) justification(left) color(white) bcolor(black) bmargin(top_bottom)) order(recreverse ca  ownexpand  diasp gs)


*Online Appendix reduced form Table A6*

oprobit rec_severitynumeric1 recreverse  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow)robust
outreg2 using myreg.doc, replace ctitle(Severity of censorship) keep(recreverse) addtext(Country FE, YES, Year FE, YES) label
eststo m1

oprobit rec_severitynumeric1 recreverse ca i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust
eststo m2
outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust
eststo m3

outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow)robust
eststo m4

outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs diasp  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust

eststo m5

outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs diasp lnpop lnpercapita i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust

eststo m6
outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp lnpop lnpercapita) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp lnpop lnpercapita demoindicator i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust
eststo m7

outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp lnpop lnpercapita demoindicator) addtext(Country FE, YES, Year FE, YES) label


oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp  lnpop lnpercapita demoindicator economicfreedom legalfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5, cluster (countrycodecow) robust 
eststo m8

outreg2 using myreg.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp lnpop lnpercapita demoindicator economicfreedom legalfreedom) addtext(Country FE, YES, Year FE, YES) label

*Table A7 - Online Appendix*

heckoprobit  rec_severitynumeric1 recreverse ca ownexp gs diasp  , select(ce=  lnpop  lnpercapita dpi_gvs dpi_gf dpi_hlio v2mecorrpt v2merange v2smonper i.countrycodecow i.yearmerger) cluster(countrycodecow) robust
		
outreg2 using myreg1.doc, replace ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp lnpop lnpercapita  dpi_gvs dpi_gf dpi_hlio v2mecorrpt v2merange v2smonper) addtext(Country FE, YES, Year FE, YES, Model, Heckman selection) label

*Table A8 - Online Appendix*

oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent3==1, cluster (countrycodecow) robust
outreg2 using myreg2.doc, replace ctitle(Severity of censorship) keep(recreverse ca ownexp gs  diasp ) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp lnpop lnpercapita demoindicator economicfreedom legalfreedom i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent3==1, cluster (countrycodecow) robust


outreg2 using myreg2.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs  diasp lnpop lnpercapita demoindicator economicfreedom legalfreedom) addtext(Country FE, YES, Year FE, YES) label


oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent3==0, cluster (countrycodecow) robust

outreg2 using myreg2.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs  diasp ) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs diasp lnpop lnpercapita demoindicator economicfreedom legalfreedom  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent3==0, cluster (countrycodecow) robust

outreg2 using myreg2.doc, append ctitle(Severity of censorship) keep(recreverse ca ownexp gs  diasp lnpop lnpercapita demoindicator economicfreedom legalfreedom ) addtext(Country FE, YES, Year FE, YES) label

oprobit rec_severitynumeric1 recreverse ca ownexp gs  diasp  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent4==1, cluster (countrycodecow) robust

oprobit rec_severitynumeric1 recreverse ca ownexp gs lnpop lnpercapita demoindicator economicfreedom legalfreedom  i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & censoringagent4==1, cluster (countrycodecow) robust


*Table A9 - Online Appendix*

*Generating frequency weights for values One, Several, Many and All in journalisteditor and mediaoutlet*

encode mediaoutlet, generate(recoded_mediaoutlet)
numlabel recoded_mediaoutlet, add mask("#. ")
tab recoded_mediaoutlet
tab recoded_mediaoutlet if recoded_mediaoutlet>1000 & recoded_mediaoutlet<2000
tab recoded_mediaoutlet if recoded_mediaoutlet<1000 
encode journalistseditors, generate(recoded_je)
numlabel recoded_je, add mask("#. ")
tab recoded_je
tab recoded_je if recoded_je<500


*generating analytical weights for both media outlets and individual journalists*
gen weight_mo=4 if  recoded_mediaoutlet>=2916 & recoded_mediaoutlet<=3135 & recoded_mediaoutlet!=.
replace weight_mo=6 if recoded_mediaoutlet>=1944 & recoded_mediaoutlet<=1993 & recoded_mediaoutlet!=.
replace weight_mo=7 if recoded_mediaoutlet>=338 & recoded_mediaoutlet<=340 & recoded_mediaoutlet!=.
replace weight_mo=. if recoded_mediaoutlet==.
replace weight_mo=2 if weight_mo==. & recoded_mediaoutlet!=.

gen weight_je=3 if  recoded_je>=2646 & recoded_je<=2851 & recoded_je!=.
replace weight_je=5 if  recoded_je>=1769 & recoded_je<=1777 & recoded_je!=.
replace weight_je=7 if  recoded_je==289 & recoded_je!=. & recoded_mediaoutlet==.
replace weight_je=1 if weight_je==. & recoded_je!=.

*generating a combined weighting scale for both media outlets and individual media professionals*
gen weight_combined=weight_mo
replace weight_combined=weight_je if weight_combined==. & weight_je!=.
tab weight_combined

*note: this is a code for weights that gives theoretical primacy to media outlets with affilation, more than to individual journalists; there could be alternative scales*

*weigthing variable ce (event count pre-collapse and merger with QOG 2019)*

gen ce_weights=ce*weight_combined
tab ce_weights

oprobit  rec_severitynumeric1 recreverse ca ownexp gs diasp lnpop lnpercapita economic legal  i.countrycodecow i.yearmerger[fweight=ce_weights] if recoded_mediatypenumeric1<5,  cluster(countrycodecow) robust

outreg2 using myreg3.doc, replace ctitle(Severity of censorship) keep(recreverse ca ownexp gs diasp lnpop lnpercapita economic legal) addtext(Country FE, YES, Year FE, YES, Model, Ordered probit, Frequency weights, YES) label

*Table A10 - Online Appendix*

logit mtype2 aggreg_tvconsipolated  lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust
																									 
outreg2 using myreg4.doc, replace ctitle(Censorship occurence) keep(aggreg_tvconsipolated  lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Logit) label
																				 
logit mtype1 aggreg_radioconsipolated  lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust

outreg2 using myreg4.doc, append ctitle(Censorship occurence) keep(aggreg_radioconsipolated  lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Logit) label
																			 
logit mtype4 aggreg_newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow,cluster(countrycodecow) robust

outreg2 using myreg4.doc, append ctitle(Censorship occurence) keep(aggreg_newspconsipolated  lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Logit) label

																									 
logit mtype4 aggreg_intconsipolated v2smonex lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust

outreg2 using myreg4.doc, append ctitle(Censorship occurence) keep(aggreg_intconsipolated v2smonex lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Logit) label

*Table A11 - Online Appendix*

use TSGEDMC.dta


	  xtnbreg mtype2 tvconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom i.yearmerger, fe 
	  eststo m1
	 xtnbreg mtype1 radioconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom   i.yearmerger, fe 
	 eststo m2
	 xtnbreg mtype3 newspconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
	 eststo m3
	 xtnbreg mtype4 intconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger, fe
	 eststo m4
 
 esttab m1 m2 m3 m4 using count.rtf, se  varlabels() varwidth(9) starlevels( * 0.10 ** 0.05 *** 0.01) compress
 
 
 *Table A12 - Online Appendix*
 
*unit root tests*
xtunitroot fisher mtype2, dfuller trend lags(1)
xtunitroot fisher mtype1, dfuller trend lags(1)
xtunitroot fisher mtype3, dfuller trend lags(1)
xtunitroot fisher mtype4, dfuller trend lags(1)

xtunitroot fisher  tvcons, dfuller trend lags(1)
xtunitroot fisher  radiocons, dfuller trend lags(1)
xtunitroot fisher  newspcons, dfuller trend lags(1)
xtunitroot fisher  intcons, dfuller trend lags(1)

*Figure 9 - Online Appendix*

twoway (tsline  tvconsipolated radioconsipolated newspconsipolated intconsipolated ), ttitle( yearmerger ) by(country_name)
 

*Table A14 - Online Appendix*

		oprobit rec_severitynumeric1 mtype2 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year<2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, replace ctitle(Censorship severity) keep(mtype2) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype2 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year>=2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype2) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype1 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year<2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype1) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype1 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year>=2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype1) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype3 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year<2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype3) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype3 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year>=2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype3) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype4 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year<2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype4) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
					
		oprobit rec_severitynumeric1 mtype4 lnpop  lnpercapita demoindicator  i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5 & year>=2008,cluster(countrycodecow) robust 	
					outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype4) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label

					
		oprobit rec_severitynumeric1 mtype2 mtype1 mtype3 lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow  if recoded_mediatypenumeric1<5, cluster(countrycodecow) robust	
				outreg2 using myreg5.doc, append ctitle(Censorship severity) keep(mtype2 mtype1 mtype3  lnpop  lnpercapita demoindicator) addtext(Country FE, YES, Year FE, YES, Model, Ordered Probit) label
					
 
 *Additional tests - Online Appendix*
 clear
 use TSGEDMC.dta
 
 	 *(in the same table) report the structural breaks (Chow test) and cointegration/unit root tests*
	 	  xtnbreg mtype2 tvconsipolated lnpop  lnpercapita  i.yearmerger if yearmerger<2008, fe 
		outreg2 using myreg1.doc, replace ctitle(Censorship event number) keep(tvconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
  	 	  xtwest mtype2 tvconsipolated lnpop  lnpercapita , lags(1) leads(1) constant trend
		  
	 	 	  xtreg mtype2 tvconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom i.yearmerger , fe cluster(countrycodecow) robust
		outreg2 using myreg1.doc, append ctitle(Censorship event number) keep(tvconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label

	 xtreg mtype1 radioconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom   i.yearmerger if yearmerger<2008, fe cluster(countrycodecow) robust
	 		outreg2 using myreg1.doc, append ctitle(Censorship event number) keep(radioconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
	
		  	 	  xtwest mtype1 radioconsipolated lnpop  lnpercapita , lags(1) leads(1) constant trend
		xtnbreg mtype1 radioconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom   i.yearmerger if yearmerger>=2008, fe
outtreg2 using myreg1.doc, append ctitle(Censorship event number) keep(radioconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label


	 xtnbreg mtype3 newspconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger if yearmerger<2008, fe
	 
outtreg2 using myreg1.doc, append ctitle(Censorship event number) keep(newspconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label
	 
		 xtnbreg mtype3 newspconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger if yearmerger>=2008, fe
outtreg2 using myreg1.doc, append ctitle(Censorship event number) keep(newspconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label
  	 	  xtwest mtype3 newspconsipolated lnpop  lnpercapita , lags(1) leads(1) constant trend
	xtnbreg mtype4 intconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger if yearmerger<2008, fe
	
	outtreg2 using myreg1.doc, append ctitle(Censorship event number) keep(intconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Pre-2008, YES) label

	xtnbreg mtype4 intconsipolated lnpop  lnpercapita economicfreedom legalfreedom politicalfreedom  i.yearmerger if yearmerger>=2008, fe
	outtreg2 using myreg1.doc, append ctitle(Censorship event number) keep(intconsipolated) addtext(Country FE, YES, Year FE, YES, All controls, YES, Post-2008, YES) label
  	 	  xtwest mtype4 intconsipolated lnpop  lnpercapita , lags(1) leads(1) constant trend

*Table A15 - Online Appendix, placebo tests*
use GEDMC
gen dailiescensorship=distribution1
replace dailiescensorship=0 if dailiescensorship==.

gen weekliescensorship=distribution2+distribution3
replace weekliescensorship=0 if weekliescensorship==.
			
logit dailiescensorship aggreg_newspconsipolated aggreg_lnprint lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust

logit dailiescensorship aggreg_newspconsipolated lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust
																										logit weekliescensorship aggreg_newspconsipolated aggreg_lnprint lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust
																										logit weekliescensorship aggreg_newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger i.countrycodecow, cluster(countrycodecow) robust

*falsification tests for the TS format*
use TSGEDMC
xtnbreg distribution1 newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger, fe 

gen aggreg_smalldist= distribution2+ distribution3
xtnbreg aggreg_smalldist newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger, fe			 

xtnbreg distribution1 newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger, fe 
	outreg2 using myreg.doc, replace ctitle(Censorship events - dailies) keep(newspconsipolated  lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Negative Binomial) label
								 
xtnbreg aggreg_smalldist newspconsipolated  lnpop  lnpercapita demoindicator i.yearmerger, fe 
		outreg2 using myreg.doc, append ctitle(Censorship events - weeklies) keep(newspconsipolated  lnpop  lnpercapita demoindicator ) addtext(Country FE, YES, Year FE, YES, Model, Negative Binomial) label


*Tables A16 and A17 - Online Appendix*

*Non-democracies (government as censor; traditional media - TV, radio, print, online)*
oprobit rec_severitynumeric1 recreverse  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo rec

outreg2 using nondem.doc, replace ctitle(Government censorship in non-democracies) keep(recreverse  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 ca economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo ca

outreg2 using nondem.doc, append ctitle(Government censorship in non-democracies) keep(ca  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label

oprobit rec_severitynumeric1 ownexpand economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo own

outreg2 using nondem.doc, append ctitle(Government censorship in non-democracies) keep(ownexpand  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 gs economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo gs

outreg2 using nondem.doc, append ctitle(Government censorship in non-democracies) keep(gs  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 diasp economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator<=7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo diasp

outreg2 using nondem.doc, append ctitle(Government censorship in non-democracies) keep(diasp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


*Democracies (government as censor; traditional media - TV, radio, print, online)*

oprobit rec_severitynumeric1 recreverse  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo rec

outreg2 using dem.doc, replace ctitle(Severity of censorship in democracies) keep(recreverse  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 ca economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo ca

outreg2 using dem.doc, append ctitle(Severity of censorship in democracies) keep(ca  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label

oprobit rec_severitynumeric1 ownexpand economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo own

outreg2 using dem.doc, append ctitle(Severity of censorship in democracies) keep(ownexpand  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 gs economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo gs

outreg2 using dem.doc, append ctitle(Severity of censorship in democracies) keep(gs  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


oprobit rec_severitynumeric1 diasp economicfreedom legalfreedom politicalfreedom lnpercapita lnpop   loil  i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5 & demoindicator>7.5 & censoringagent3==1, cluster(countrycodecow) robust
eststo diasp

outreg2 using dem.doc, append ctitle(Severity of censorship in democracies) keep(diasp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit) label


*Table A18 - Online Appendix*
*HLM - full sample*

xtmixed rec_severitynumeric1 recreverse ca gs diasp ownexp recreverse economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & rec3<5, || countrycodecow: , covariance(independent) var || yearmerger: 

outreg2 using hlm1.doc, replace ctitle(Severity of censorship - full sample) keep(recreverse ca gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil)  addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit, AIC, BIC)   label

   
*Hierarchical Linear Modelling - Non-democracies*
xtmixed rec_severitynumeric1 recreverse ca ownexp gs diasp economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & demoindicator<=7.5 & rec3<5 , || countrycodecow: , covariance(independent) var || yearmerger: 

outreg2 using hlm2.doc, append ctitle(Severity of censorship - Autocracies) keep(recreverse ca gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit, AIC, BIC) label


 *Hierarchical Linear Modelling - Democracies*
xtmixed rec_severitynumeric1 recreverse ca ownexp gs diasp economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil i.countrycodecow i.yearmerger if rec_severitynumeric1<13 & demoindicator>7.5 & rec3<5 , || countrycodecow: , covariance(independent) var || yearmerger: 

outreg2 using hlm3.doc, append ctitle(Severity of censorship - Democracies) keep(recreverse ca gs diasp ownexp  economicfreedom legalfreedom politicalfreedom lnpercapita lnpop loil) addtext(Country FE, Yes, Year FE, Yes, Model, Ordered Probit,  AIC , BIC ) label


*Table A19 - Online Appendix*


oprobit rec_severitynumeric1 recoded_mediatypenumeric1 economicfreedom legalfreedom demoindicator lnpercapita lnpop i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & mediaoutlet!=""."" & journalistseditors==""."", cluster (countrycodecow)
eststo outlet

oprobit rec_severitynumeric1 recoded_mediatypenumeric1 economicfreedom legalfreedom demoindicator lnpercapita lnpop i.countrycodecow i.yearmerger if recoded_mediatypenumeric1<5 & mediaoutlet==""."" & journalistseditors!=""."", cluster (countrycodecow)
eststo journalist
esttab outlet journalist using outlet1.rtf, keep(recoded_mediatypenumeric1 economicfreedom legalfreedom demoindicator lnpercapita lnpop) se  varlabels() varwidth(9) starlevels( ~ 0.10 * 0.05 ** 0.01 *** 0.001)   

